Add a release note about subclassing
authorMatthias Clasen <mclasen@redhat.com>
Sun, 28 Feb 2016 14:38:31 +0000 (09:38 -0500)
committerMatthias Clasen <mclasen@redhat.com>
Sun, 28 Feb 2016 14:38:31 +0000 (09:38 -0500)
This is showing up in bug reports like
https://bugzilla.gnome.org/show_bug.cgi?id=762754
so better add a note that gives a hint at the solution.

README.in

index 8d7d16e00c7816e741d7e05279affb159f8af7d7..b171cdbb5d4b7171d8df6f1d1b38b46bd3e65a33 100644 (file)
--- a/README.in
+++ b/README.in
@@ -84,12 +84,11 @@ Release notes for 3.20
   the element names it has and the style classes it uses. The GTK+
   inspector can also be helpful in finding this information.
 
-* The GtkFileChooser interface pre-requisite changed from GtkWidget
-  to GObject, allowing non-widget implementations of this interface.
-  This is a minor change in ABI, as apps are no longer guaranteed
-  that a GtkFileChooser interface also supports all GtkWidget methods.
-  However, all previously existing objects still derive from GtkWidget,
-  so no existing code should break.
+* GTK+ now uses internal subobjects (also known as gadgets) for allocating
+  and drawing widget parts. Applications that subclass GTK+ widgets may
+  see warnings if they override size_allocate and don't chain up. The
+  proper way to subclass is to chain up in size_allocate. If you don't
+  want to do that for some reason, you have to override draw as well.
 
 * Several fixes for window sizing and placement with client-side
   decorations may affect applications that are saving and restoring
@@ -104,6 +103,13 @@ Release notes for 3.20
   on having a theme-provided background, call gtk_render_background()
   from your ::draw handler.
 
+* The GtkFileChooser interface pre-requisite changed from GtkWidget
+  to GObject, allowing non-widget implementations of this interface.
+  This is a minor change in ABI, as apps are no longer guaranteed
+  that a GtkFileChooser interface also supports all GtkWidget methods.
+  However, all previously existing objects still derive from GtkWidget,
+  so no existing code should break.
+
 * The GtkPlacesSidebar added a GtkPlacesOpenFlags parameter to the
   other-locations signal in order to allow opening new windows or
   tabs as done with other locations. This breaks the API for those